import { Column, Entity, ManyToMany, PrimaryGeneratedColumn } from 'typeorm'
import { Roles } from '../roles/roles.entity'

@Entity()
export class Menus {
  //  @Column({ unique: true })：唯一性
  @PrimaryGeneratedColumn()
  id: number
  @Column()
  name: string
  @Column()
  path: string
  @Column()
  order: number
  //数组不能用字符串存储，这里是因为只有五个操作策略且不需要检索
  //create、delete、update、read、manage
  @Column()
  acl: string

  //一个角色对应多个菜单和权限，一个菜单或权限也对应多个角色
  @ManyToMany(() => Roles, (roles) => roles.menus, { onDelete: 'CASCADE' })
  roles: Roles[]
}
